home *** CD-ROM | disk | FTP | other *** search
- /************************************************************
-
- Created: Sunday, January 6, 1991 at 9:03 PM
- Controls.h
- C Interface to the Macintosh Libraries
-
-
- Copyright Apple Computer, Inc. 1985-1990
- All rights reserved
-
- ************************************************************/
-
-
- #ifndef __CONTROLS__
- #define __CONTROLS__
-
- #ifndef __QUICKDRAW__
- #include <Quickdraw.h>
- #endif
-
-
- enum {
-
- pushButProc = 0,
- checkBoxProc = 1,
- radioButProc = 2,
- useWFont = 8,
- scrollBarProc = 16,
- inButton = 10,
- inCheckBox = 11,
- inUpButton = 20,
- inDownButton = 21,
- inPageUp = 22,
- inPageDown = 23,
- inThumb = 129,
-
- popupMenuProc = 1008, /* 63 * 16 */
- inLabel = 1,
- inMenu = 2,
- inTriangle = 4
- };
-
- enum { popupFixedWidth = 1 << 0, popupReserved = 1 << 1, popupUseAddResMenu = 1 << 2,
- popupUseWFont = 1 << 3};
-
- enum { popupTitleBold = 1 << 8, popupTitleItalic = 1 << 9, popupTitleUnderline = 1 << 10,
- popupTitleOutline = 1 << 11, popupTitleShadow = 1 << 12, popupTitleCondense = 1 << 13,
- popupTitleExtend = 1 << 14, popupTitleNoStyle = 1 << 15};
-
-
- enum {
-
- popupTitleLeftJust = 0x00000000,
- popupTitleCenterJust = 0x00000001,
- popupTitleRightJust = 0x000000FF,
-
- /*
- axis constraints for DragGrayRgn call*/
- noConstraint = 0,
- hAxisOnly = 1,
- vAxisOnly = 2,
-
- /*
- control messages*/
- drawCntl = 0,
- testCntl = 1,
- calcCRgns = 2,
- initCntl = 3,
- dispCntl = 4,
- posCntl = 5,
- thumbCntl = 6,
- dragCntl = 7,
- autoTrack = 8,
- calcCntlRgn = 10,
- calcThumbRgn = 11,
-
- cFrameColor = 0,
- cBodyColor = 1,
- cTextColor = 2
- };
- enum {
- cThumbColor = 3
- };
-
- struct ControlRecord {
- struct ControlRecord **nextControl;
- WindowPtr contrlOwner;
- Rect contrlRect;
- unsigned char contrlVis;
- unsigned char contrlHilite;
- short contrlValue;
- short contrlMin;
- short contrlMax;
- Handle contrlDefProc;
- Handle contrlData;
- ProcPtr contrlAction;
- long contrlRfCon;
- Str255 contrlTitle;
- };
-
- typedef struct ControlRecord ControlRecord;
- typedef ControlRecord *ControlPtr, **ControlHandle;
-
- struct CtlCTab {
- long ccSeed; /*reserved*/
- short ccRider; /*see what you have done - reserved*/
- short ctSize; /*usually 3 for controls*/
- ColorSpec ctTable[4];
- };
-
- typedef struct CtlCTab CtlCTab;
- typedef CtlCTab *CCTabPtr, **CCTabHandle;
-
- struct AuxCtlRec {
- Handle acNext; /*handle to next AuxCtlRec*/
- ControlHandle acOwner; /*handle for aux record's control*/
- CCTabHandle acCTable; /*color table for this control*/
- short acFlags; /*misc flag byte*/
- long acReserved; /*reserved for use by Apple*/
- long acRefCon; /*for use by application*/
- };
-
- typedef struct AuxCtlRec AuxCtlRec;
- typedef AuxCtlRec *AuxCtlPtr, **AuxCtlHandle;
-
-
- #ifdef __cplusplus
- extern "C" {
- #endif
- pascal ControlHandle NewControl(WindowPtr theWindow,const Rect *boundsRect,
- ConstStr255Param title,Boolean visible,short value,short min,short max,
- short procID,long refCon)
- = 0xA954;
- pascal void SetCTitle(ControlHandle theControl,ConstStr255Param title)
- = 0xA95F;
- pascal void GetCTitle(ControlHandle theControl,Str255 title)
- = 0xA95E;
- pascal ControlHandle GetNewControl(short controlID,WindowPtr owner)
- = 0xA9BE;
- pascal void DisposeControl(ControlHandle theControl)
- = 0xA955;
- pascal void KillControls(WindowPtr theWindow)
- = 0xA956;
- pascal void HideControl(ControlHandle theControl)
- = 0xA958;
- pascal void ShowControl(ControlHandle theControl)
- = 0xA957;
- pascal void DrawControls(WindowPtr theWindow)
- = 0xA969;
- pascal void Draw1Control(ControlHandle theControl)
- = 0xA96D;
- pascal void HiliteControl(ControlHandle theControl,short hiliteState)
- = 0xA95D;
- pascal void UpdtControl(WindowPtr theWindow,RgnHandle updateRgn)
- = 0xA953;
- pascal void UpdateControls(WindowPtr theWindow,RgnHandle updateRgn)
- = 0xA953;
- pascal void MoveControl(ControlHandle theControl,short h,short v)
- = 0xA959;
- pascal void SizeControl(ControlHandle theControl,short w,short h)
- = 0xA95C;
- pascal void SetCtlValue(ControlHandle theControl,short theValue)
- = 0xA963;
- pascal short GetCtlValue(ControlHandle theControl)
- = 0xA960;
- pascal void SetCtlMin(ControlHandle theControl,short minValue)
- = 0xA964;
- pascal short GetCtlMin(ControlHandle theControl)
- = 0xA961;
- pascal void SetCtlMax(ControlHandle theControl,short maxValue)
- = 0xA965;
- pascal short GetCtlMax(ControlHandle theControl)
- = 0xA962;
- pascal void SetCRefCon(ControlHandle theControl,long data)
- = 0xA95B;
- pascal long GetCRefCon(ControlHandle theControl)
- = 0xA95A;
- pascal void SetCtlAction(ControlHandle theControl,ProcPtr actionProc)
- = 0xA96B;
- pascal ProcPtr GetCtlAction(ControlHandle theControl)
- = 0xA96A;
- pascal void DragControl(ControlHandle theControl,Point startPt,const Rect *limitRect,
- const Rect *slopRect,short axis)
- = 0xA967;
- pascal short TestControl(ControlHandle theControl,Point thePt)
- = 0xA966;
- pascal short TrackControl(ControlHandle theControl,Point thePoint,ProcPtr actionProc)
- = 0xA968;
- pascal short FindControl(Point thePoint,WindowPtr theWindow,ControlHandle *theControl)
- = 0xA96C;
- pascal void SetCtlColor(ControlHandle theControl,CCTabHandle newColorTable)
- = 0xAA43;
- pascal Boolean GetAuxCtl(ControlHandle theControl,AuxCtlHandle *acHndl)
- = 0xAA44;
- pascal short GetCVariant(ControlHandle theControl)
- = 0xA809;
- void dragcontrol(ControlHandle theControl,Point *startPt,const Rect *limitRect,
- const Rect *slopRect,short axis);
- ControlHandle newcontrol(WindowPtr theWindow,const Rect *boundsRect,char *title,
- Boolean visible,short value,short min,short max,short procID,long refCon);
- short findcontrol(Point *thePoint,WindowPtr theWindow,ControlHandle *theControl);
- void getctitle(ControlHandle theControl,char *title);
- void setctitle(ControlHandle theControl,char *title);
- short trackcontrol(ControlHandle theControl,Point *thePoint,ProcPtr actionProc);
- short testcontrol(ControlHandle theControl,Point *thePt);
- #ifdef __cplusplus
- }
- #endif
-
- #endif
-